Telephone answering apparatus for indicating the presence of a power cycle

ABSTRACT

A telephone answering apparatus for indicating the presence of a power-cycle includes a memory device which stores a retrieved message and a value from a clock, and a controller operatively connected to the memory device and to the clock. The controller initializes the value of the clock to a power-up value upon receiving power from a source and the power-up value is stored along with the retrieved message in the memory device. A user may retrieve the stored power-up value along with the message into an application that is running on a host computer which will indicate that no time was recorded for the retrieved message.

FIELD OF THE INVENTION

This invention relates generally to the field of automatic telephoneanswering systems and, in particular, to apparatus for indicating anincorrect time stamp on messages recorded after a power cycle.

BACKGROUND OF THE INVENTION

There are various types of systems which automatically answer anincoming call and maintain a telephone line connection which are broadlydefined as automatic telephone answering systems. These systems include,for example, automatic telephone message recording equipment, messagerecording systems having remote access message playback, automatictelephone call forwarding equipment, automatic dial-up alarm receivingequipment, automatic answering data entry systems, and other telephonedevices used in association with modern equipment. Many of these systemstypically have a method of recording and time stamping messages whichare received. In general, it is cost prohibitive for these systems toinclude battery backup to allow continuation of clock function duringperiods without power, or power-cycles. Accordingly, these existingmethods, typically have no means to account for power cycles or thelength of time power is off to the system. When power is shut off to thesystem and then returned, these devices continue to time stamp recordedmessages with an incorrect time. When the user plays back the message,there is no indication that a power cycle has been experienced and thetime stamps are inaccurate.

Accordingly, it would be desirable to have a simple and cost effectiveapparatus for indicating the presence of a power cycle that overcomesthe disadvantages described above.

SUMMARY OF THE INVENTION

One aspect of the invention provides a telephone answering apparatus forindicating the presence of a power-cycle comprising a memory devicewhich stores a received message in a value from a clock, and acontroller operatively connected to the memory device and to the clock,wherein the controller initializes the value of the clock to a power-upvalue upon receiving power from a source and stores the power-up valuealong with a stored message in the memory device. The apparatuspreferably includes a timer operatively connected to the clock. Theapparatus may also comprise a user interface operatively connected tothe controller to allow a user to reset the clock to a start-time value.The apparatus may further include an audio receiver operativelyconnected to the controller. The audio receiver may be operativelyconnected to a 2-wire to 4-wire network circuit. The 2-wire to 4-wirenetwork circuit may be operatively connected to a switch. The audioreceiver, timer, clock and controller may be preferably operablyconnected to a processor which is connected to a power supply.Preferably, the memory device is flash memory.

A further aspect of the invention provides a method of operating atelephone answering apparatus for indicating the presence of apower-cycle. A processor operably connected to a controller, audioreceiver, timer and clock are provided. The controller is operablyconnected to a memory device and an application interface. Power issupplied to the processor. The clock is initialized to a power-up value.A message is received on an audio receiver while the clock is set to apower-up value and is then stored along with the power-up value in thememory device. The power-up value may then be retrieved into anapplication running on a host computer. An application input may be sentthrough the application interface to the controller to reset the clockto a start-time value. A message then received over the GSTN line isreceived on the audio receiver after the clock is set to the start-timevalue. A timer sends ticks to the clock and the clock start-time valueis incremented to a clock value. The message received after the clock isset to the start-time value and the incremented clock value are storedto a memory device.

A further aspect of the invention provides a method of indicating thepresence of a power-cycle on a time-stamped recorded message. Theprocessor is powered-up. A clock is initialized to a power-up value. Themessage is received. The received message and the power-up value arestored to a memory device. The clock may be set to a start-time valueand the clock may be incremented to provide a clock value. A secondmessage may be received after the clock is set to a start-up value. Thereceived second message and the clock value may be stored to a memorydevice. The message and power-up value may be retrieved into anapplication running on a host computer, and a display indicating that notime was recorded for the message may be displayed on the host computer.

The foregoing and other features and advantages of the invention willbecome further apparent from the following detailed description of thepresently preferred embodiments, read in conjunction with theaccompanying drawings. The detailed description and drawings are merelyillustrative of the invention rather than limiting, the scope of theinvention being defined by the appended claims and equivalents thereof.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a preferred embodiment of a telephoneanswering apparatus in accordance with the invention; and

FIGS. 2A-2H is a flow chart which illustrates one example of theoperation of a telephone answering apparatus in accordance with theinvention.

DETAILED DESCRIPTION OF THE PRESENTLY PREFERRED EMBODIMENTS

As shown in FIG. 1, a telephone answering apparatus 10 for detecting thetime of message reception includes a telephone answering device (TAD) 12and a host computer 14. A caller 16 may establish a telephone connectionto the telephone answering device 12 through a General SwitchedTelephone Network (GSTN) 18.

The telephone answering device 12 includes a switch 20, a 2-wire to4-wire network circuit 22, a loop holding circuit 24, and a processor26. The processor 26 may be any of the commercially availableprocessors. The processor 26 may preferably be a digital signalprocessor such as, for example, a TMS 320C52 manufactured by TexasInstruments Inc. In the embodiment shown, the processor 26 maypreferably execute software or firmware which functionally provides acontroller 28, a timer 31, a device clock 30, an audio receiver 32, anda ring detector 34. One embodiment of the telephone answering device 12may preferably be the Sportster Message Plus supplied by 3ComCorporation. Alternatively, the controller 28, timer 31, device clock30, audio receiver 32, and ring detector 34 may be comprised of discretecircuits which may be operatively connected to the processor 26. Theaudio receiver 32 receives messages in the form of an audio signal fromthe caller 16 and converts the audio signal into audio data. The timer31 provides a tick signal to the device clock 30. The ticks are used bythe device clock 30 to measure time. The ring detector 34 detectsincoming GSTN ring signals from the GSTN 18. The controller 28 controlsthe various functions carried out by the telephone answering device 12.

The switch 20 may be any of the commercially available switchesincluding, for example, a relay switch or an electronic switch. As shownin FIG. 1, the switch 20 is operatively connected to the 2-wire to4-wire network circuit 20 and the loop holding circuit 24. Uponactivation of the switch 20 by the controller 28, the loop holdingcircuit 24 drains current from the GSTN 18. Upon detection of thecurrent drain by the GSTN 18, the GSTN 18 establishes a telephoneconnection to the telephone answering device 12. A telephone connectionbetween the caller 16 and telephone answering device 12 may beestablished if the caller 16 initiates transmission of a ring signalfrom the GSTN 18 to the telephone answering device 12.

The 2-wire to 4-wire network circuit 22 functions to combine signalswhich are both transmitted and received by the processor 26 alongtelephone line 13. In the embodiment shown in FIG. 1, the 2-wire to4-wire network circuit 22 routs telephone signals from the telephoneline 13 to the audio receiver 32.

The host computer 14 may preferably be, for example, any one of thecommercially available computers. The host computer 14 has its own hostclock 36 which is capable of providing a host time to an application 38which may be run on the host computer 14. The application 38 maypreferably be, for example, any program or software that is executed bythe host computer 14 which has the capability to interact with thetelephone answering device 12 and perform various functions. Thesefunctions may include, for example, receiving incoming messages from thecaller 16 through the telephone answering device 12, and retrievingmessages from the telephone answering device 12. One embodiment of theapplication 38 may be supplied by the French company BVRP Software andmay be included with purchase of the Sportster Message Plus.

As shown in FIG. 1, the telephone answering device 12 further includes amemory device 40 which may be any of the commercially available memorydevices such as, for example, an EEPROM (Electrically ErasableProgrammable Read Only Memory), a SRAM (Static Random Access Memory) orFlash Memory suitable for storing messages received by the telephoneanswering device 12. An application interface 42 is operativelyconnected to the controller 28 and the application 38. The applicationinterface 42 may be any of the commercially available devices (such as,for example, a serial port) suitable for providing an interface betweenthe application 38 of the host computer 14 and the controller 28 of thetelephone answering device 12.

In operation, when the telephone answering device 12 is powered on orturned on, the controller 28 initializes the device clock 30 to apower-up value, which is a specific value different from any other clockvalue that the device clock 30 may contain in all of its operatingmodes. For example, for the Sportster Message Plus, the device clock 30is set to a power-up value which includes 255 days, 255 hours, 255minutes, and 255 seconds. This value may never be reached in any of thedevice clock's operating modes because the device clock 30 saturates at254 days, 24 hours, 0 minutes, and 0 seconds. When the telephoneanswering device 12 is powered on or turned on, the controller 28 alsostarts the timer 31 which provides regular ticks to the device clock 30.For the Sportster Message Plus, for example, each tick increments thedevice clock 30 two seconds. In order for the device clock 30 to beincremented, the device clock 30 must be initialized or reset to astart-time clock value such as, for example, a zero clock value. This isaccomplished by a command sent by the application 38 through theapplication interface 42 (i.e., serial port) and executed by thecontroller 28 of the telephone answering device 12. This initializationis automatically executed immediately after termination of theapplication 38 is requested by a user of the host computer 14.

If termination of the application 38 is requested by a user of the hostcomputer 14, the application 38 requests that the device clock 30 bereset to a start-time clock value or zero clock value. The request isreceived by the controller 28 via the application interface 42. Uponreceipt of the request, the controller 28 resets the device clock 30 andsends a response back to the application 38 via the applicationinterface 42 to acknowledge that the device clock 30 is reset. When theapplication 38 receives this acknowledgment, the application 38 storesthe host time, which is the real time contained in the host clock, as areference host clock value. The application 38 also enables thetelephone answering device 12 to receive and store incoming messagesfrom the caller 16 prior to the closing of the application 38. Theapplication 38 subsequently closes or terminates.

When the application 38 is closed, the ring detector 34 detects incomingcalls from the GSTN by detecting an incoming GSTN ring signal. The ringdetector 34 reports the detection of a ring signal to the controller 28.The controller 28 establishes a telephone connection between the caller16 and the telephone answering device 12 via the GSTN 18 by settingswitch 20. The controller 28 then receives the caller's 16 message viathe audio receiver 32 and stores it into the memory device 40. Thecontroller 28 also stores an incremented device clock value whichcorresponds to the time in which the caller's message is received in thememory 40.

When a user of the host computer 14 desires to retrieve messages storedin the telephone answering device 12, the user opens the application 38of the host computer 14. The application 38 disables the message storagefunction of the telephone answering device 12, and the audio datagenerated by the audio receiver 32 is routed directly through theapplication interface 42 and is stored in the host memory 39. In apreferred embodiment, the application 38 disables the message storagefunction of the telephone answering device 12 upon start-up of theapplication 38. The application 38 transmits a request via theapplication interface 42 to the telephone answering device 12 toretrieve the stored messages. The telephone answering device 12 thendetects the application's 38 request to retrieve new messages which arestored in the memory device 40. If the application's 38 request formessage retrieval is detected by the controller 28, the controller 28determines if there are any new messages in the memory device 40 to beretrieved. If there are new messages in the memory device 40, thecontroller 28 sends them together with their respective incrementeddevice clock values one by one from the memory device 40 through theapplication interface 42 until there are no more new messages in thememory device 40 to be sent. The application 38 retrieves the messagesand their associated incremented device clock values through theapplication interface 42. The application 38 determines the actual timeof reception for each of the retrieved messages by adding theincremented device clock value to the stored reference host clock value.The retrieved messages are then marked as old in the memory device 40 sothat the telephone answering device 12 can distinguish messages whichhave been retrieved from messages that have not yet been retrieved.

FIGS. 2A-2H illustrates one example of the operation of the telephoneanswering apparatus 10 in accordance with the invention. Reference ismade to both FIGS. 1 and 2A-2H in the following discussion. Blocks 50-57represent an example of a set of initial operating conditions of thetelephone answering apparatus 10. The host computer 14 is turned on(Block 50), and the host clock 36 is running in real time (Block 51).The host clock 36 maintains real time even when turned off because it isconnected to a battery back-up. The telephone answering device 12 isalso turned on (Block 52), and is in the on hook state or condition(Block 54), which means that there is no telephone connection betweenthe GSTN 18 and the telephone answering device 12. The device clock 30is initialized by the controller 28 to a power-up value (Block 53) whichis different than any other clock value that the device clock 30 maycontain during its operation. The telephone answering device 12 isenabled by the controller 28 (Block 55) to receive and store messages.No new messages are stored in the memory 40 at this time (Block 56). Theapplication 38 on the host computer 14 is closed (Block 57).

FIG. 2B represents a series of independent events which may occur duringthe operation of the telephone answering apparatus 10 when theapplication 38 is closed (Block 58) and when the application 38 is open(Block 84). As shown in FIGS. 2B and 2D, if the device clock 30 receivesa tick from the timer 31 (Block 59), the controller 28 determines if thedevice clock 30 is at the power-up value (Block 63). If the device clock30 does not contain the power-up value (Block 63), and is not at themaximum value (Block 64), the device clock 30 is incremented to anincremented device clock value (Block 65).

As shown in FIGS. 2B and 2E, if the power to the telephone answeringdevice 12 is off (Block 60), the controller 28 execution stops. If thepower is turned back on (Block 66), the controller 28 initializes thedevice clock 30 to the power-up value (Block 67). The telephoneanswering device 12 is in the on-hook state or condition (Block 68) andmessage reception and storage by the telephone answering device 12 isenabled (Block 69).

As shown in FIGS. 2B and 2F, if an incoming call is detected by the ringdetector 34 (Block 61) while the application 38 is closed (Block 58), atelephone connection between a caller 16 and the telephone answeringdevice 12 is established (Block 70). The message is received by theaudio receiver 32 and is stored in the memory device 40 (Block 71). Themessage is stored with an incremented device clock value or power-upvalue in the memory 40 (Block 72).

As shown in FIGS. 2B and 2H, if an incoming call is detected while theapplication 38 is open (Blocks 84, 85), a telephone connection between acaller 16 and the telephone answering device 12 is established under thecontrol of the application 38 (Block 92). The message is received andstored in the memory 39 of the host computer 14 (Block 93). The hosttime is used as the application time of message reception (Block 94).

As shown in FIGS. 2B and 2C, if termination of the application 38 isrequested by a user of the host computer 14 (Block 86), the application38 requests that the device clock 30 of the telephone answering device12 be reset to a zero device clock value or start-time value (Block 87).If the resetting of the device clock 30 is complete (Block 88), areference host time is stored on the host computer 14 as a referencehost clock value (Block 89). The telephone answering device 12 isenabled to store incoming messages (Block 90). The application 38subsequently closes (Block 91).

As shown in FIGS. 2B and 2G, when an operator of the host computer 14desires to retrieve messages stored in the telephone answering device12, the application 38 is opened (Block 62 and 73) and is able to storemessages in the form of audio data from the telephone answering device12 (Block 74). The telephone answering device 12 is disabled to preventit from storing messages in memory 40, and the audio data is transferredthrough the application 38 and is stored in the host memory 39 (Block75). If a new message is stored in the memory device 40 of the telephoneanswering device 12 while the application 38 was closed (Block 76), theapplication 38 retrieves the new message and its associated incrementeddevice clock value or power-up value (Block 77).

If the retrieval time of reception is at the power-up value (Block 78),the application 38 sets the time of message reception to a valueindicating that no time was recorded (Block 82). If the retrieval timeof reception is not at the power-up value, but is at a maximum value(Block 79), the application 38 sets the time of message reception to anundetermined value (Block 81). If the retrieved time of reception is notat the power-up value and not at a maximum value (Blocks 78 and 79), theapplication 38 adds the incremented device clock value to the referencehost clock value to determine the actual date and time of messagereception (Block 80). The retrieved message is then marked as old sothat the telephone answering device 12 can distinguish a message whichhas been retrieved from a message that has not be retrieved (Block 83).One advantage of this arrangement is that the complete date and time ofa message reception may be determined by the application 38 of the hostcomputer 14 which minimizes the space and program requirements in thetelephone answering device 12. In addition, the initialization of thedevice clock 30 to a power-up value upon power-up of the telephoneanswering device 12 prevents the host computer 14 from displaying anerroneous time of message reception. The user of the host computer 14 isalso informed that the device clock 30 experienced a power cycle.

The telephone answering apparatus 10 may be used for in a wide varietyof automatic telephone answering systems including, for example,automatic telephone message recording equipment, automatic telephonecall forwarding equipment, automatic dial-up alarm receiving equipment,and automatic answering data entry systems. It is contemplated that thetelephone answering apparatus 10 may be used in wide variety of othertypes of telephone answering systems.

While the embodiments of the invention disclosed herein are presentlyconsidered to be preferred, various changes and modifications can bemade without departing from the spirit and scope of the invention. Thescope of the invention is indicated in the appended claims, and allchanges that come within the meaning and range of equivalents areintended to be embraced therein.

I claim:
 1. A telephone answering apparatus for indicating the presenceof a power cycle comprising: a memory device and a clock having aplurality of operating modes, the clock including a plurality of clockvalues associated with the plurality of operating modes, wherein thememory device stores a received message and at least one of theplurality of clock values from the clock; and a controller operativelyconnected to the memory device and to the clock, wherein the controllerinitializes the at least one of the plurality of clock values to apower-up value upon receiving power from a source and stores thepower-up value along with a stored message in the memory device andwherein the power-up value of the clock is different from any of theplurality of clock values associated with the plurality of operatingmodes.
 2. The telephone answering apparatus of claim 1 furthercomprising a timer operatively connected to the clock.
 3. The telephoneanswering apparatus of claim 2 further comprising an applicationinterface operatively connected to the controller to allow anapplication to reset the clock to a start-time value.
 4. The telephoneanswering apparatus of claim 3 further comprising an audio receiveroperatively connected to the controller.
 5. The telephone answeringapparatus of claim 4 wherein the audio receiver is operatively connectedto a 2-wire to 4-wire network circuit.
 6. The telephone answeringapparatus of claim 5 wherein the 2-wire to 4-wire network circuit isoperatively connected to a switch.
 7. The telephone answering apparatusof claim 6 wherein the audio receiver, timer, clock and controller areoperatively connected to a processor.
 8. The telephone answeringapparatus of claim 7 wherein the processor is operatively connected to apower supply.
 9. The telephone answering apparatus of claim 1 whereinthe memory device comprises flash memory.
 10. A method of operating atelephone answering apparatus for indicating the presence of a powercycle comprising: providing a processor operatively connected to acontroller, audio receiver, timer and clock having a plurality ofoperating modes, the clock including a plurality of clock valuesassociated with the plurality of operating modes, the controlleroperatively connected to a memory device and an application interface;supplying power to the processor; initializing the clock to a power-upvalue that is different from any of the plurality of clock valuesassociated with the plurality of operating modes; receiving a message onthe audio receiver while the clock is set to the power-up value, andstoring the message and the power-up value in the memory device.
 11. Themethod of claim 10 further comprising: retrieving the message andpower-up value into an application running on a host computer.
 12. Themethod of claim 11 further comprising: sending an application inputthrough the application interface to the controller; and resetting theclock to a start-time value.
 13. The method of claim 12 furthercomprising: receiving a message over a GSTN line by the audio receiver.14. The method of claim 12 further comprising: storing a receivedmessage in the memory device after the clock is set to the start-timevalue.
 15. The method of claim 14 further comprising: sending ticks fromthe timer to the clock, incrementing the clock start-time value to aclock value.
 16. The method of claim 15 further comprising: saving themessage received after the clock is set to the start time value and theclock value to the memory device.
 17. A method of indicating thepresence of a power cycle on a time-stamped recorded message comprising:providing a clock having a plurality of operating modes, the clockincluding a plurality of clock values associated with the plurality ofoperating modes; powering up a processor; initializing a clock to apower-up value that is different from any of the plurality of clockvalues associated with the plurality of operating modes; receiving amessage, and storing the message and the power-up value to a memorydevice.
 18. The method of claim 17 further comprising: setting the clockto a start-time value; incrementing the clock to provide a clock value;receiving a second message after the clock is set to a start-up value,storing the second message and the clock value to the memory device. 19.The method of claim 18 further comprising retrieving the second messageand the clock value to an application, and determining whether the clockvalue is valid.
 20. The method of claim 17 further comprising:retrieving the message and power-up value into an application running ona host computer and indicating that no time was recorded for the messageon the host computer.